package co.edu.udea.herbario.bb;

import co.edu.udea.herbario.bl.InformacionFamilia;
import co.edu.udea.herbario.dto.Familia;
import java.util.ArrayList;
import java.util.Date;
import javax.faces.event.ActionEvent;

/**
 * Esta clase contiene la implementacion de los metodos planteados para recuperar la informacion de una familia
 *
 * @author Marcela Colorado
 */

public class FamiliaBean
{
    private Integer codigo;         // identificador de la familia
    private String nombre;          // nombre de la familia
    private Date fechaIngreso;      // fecha en la cual se ingreso la familia al sistema    

    Familia fam;
    ArrayList <String> familias = null;
    InformacionFamilia infoFam = null;

    /**
     * Constructor de la clase FamiliaBean
     */
    public FamiliaBean()
    {
        fam = new Familia();
        infoFam = new InformacionFamilia();
    }

    /**
     * Metodo que obtiene toda la informacion de la familia asociada al codigo que se tiene como parametro
     * @param event
     */
    public void recuperarFamilia(ActionEvent event)
    {
        fam = infoFam.obtenerFamilia(codigo);
    }

    /**
     * Metodo que retorna los nombres de las familias que se tienen registradas en el sistema
     *
     * @param valorBusqueda
     * @return
     */
    public ArrayList <String> recuperarFamilias(String valorBusqueda)
    {
        familias = infoFam.obtenerFamilias(valorBusqueda);
        return familias;
    }

    //Metodos get y set de los atributos de la clase
    public Integer getCodigo() {
        return codigo;
    }

    public void setCodigo(Integer codigo) {
        this.codigo = codigo;
    }

    public Date getFechaIngreso() {
        return fechaIngreso;
    }

    public void setFechaIngreso(Date fechaIngreso) {
        this.fechaIngreso = fechaIngreso;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
}
